package com.nicolas.pattern.decorator;

/**
 * Decorator（抽象装饰类）：它也是抽象构件类的子类，用于给具体构件增加职责，
 * 但是具体职责在其子类中实现。
 * 它维护一个指向抽象构件对象的引用，通过该引用可以调用装饰之前构件对象的方法，
 * 并通过其子类扩展该方法，以达到装饰的目的。
 * @author nicolas  2017年2月12日 -- 上午10:05:03
 * 构件装饰类：抽象装饰类
 */
public class ComponentDecorator  extends Component
{
	   private Component component;  //维持对抽象构件类型对象的引用

	   public ComponentDecorator(Component  component)  //注入抽象构件类型的对象
	   {
	          this.component = component;
	   }

	   public void display()
	   {
	          component.display();
	   }
	}
